import { IpcMainEvent, ipcMain } from "electron";
import { logger } from "@/settings";
import { getEmitter } from "@/event";

const pubSub = getEmitter()

/**
 * 用于响应从渲染进程发布的事件
 * @param eventName 发布的事件名
 * @param listener 
 */
export function ipcStateSynchronization<V>(eventName: string, listener: (value: V) => void) {
  // 监听来自主进程的 "exampleEvent" 事件
  pubSub.on(eventName, (data: V) => {
    // listener(data);
    // listener.call(null, data);
    listener.apply(null, [data]);
  });
}


